Systems and methods for flexible writing of internal data of regulated system

ABSTRACT

An environment and non-transitory computer readable medium that provide runtime write access to a regulated system. A method of providing runtime write access to a regulated system comprising receiving an unauthorized input parameter, and generating a runtime instruction communication. The runtime instruction communication can be modified by an unauthorized function.

CROSS REFERENCE TO RELATED APPLICATION(S)

This application is a continuation of U.S. patent application Ser. No.16/574,550, filed Sep. 18, 2019, now allowed, which claims priority toand benefit of U.S. Provisional Application No. 62/735,885 filed Sep.25, 2018, both of which are incorporated herein in its entirety.

TECHNICAL FIELD

The disclosure relates to a method and apparatus for flexible writing ofinternal data, and specifically unauthorized data, to a data store of aregulated system.

BACKGROUND OF THE DISCLOSURE

Modern aircraft employ complex Flight Management Systems that handle andcontrol large amounts of important data for the aircraft. Presently, inorder to access (e.g. read or write) internal data of the FlightManagement System, an interface that is defined at compile time in thesoftware is required. However, due to certification requirements andsafety concerns, changing or altering this access interface necessitatesadditional testing and recertification. As a result of the additionaltesting and recertification requirements, the access interface can bedifficult and costly to change. Often these interfaces will haveundergone many changes throughout the course of a development program,but are too costly to change once the system is in service.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings:

FIG. 1 illustrates a top-down schematic view of an aircraft, accordancewith various aspects described herein.

FIG. 2 illustrates an example schematic view of a system for flexiblewriting of internal data, in accordance with various aspects describedherein.

FIG. 3 illustrates an example schematic view of a computing device, inaccordance with various aspects described herein.

DETAILED DESCRIPTION

Aspects of the disclosure can be implemented in any environment,apparatus, system, or method having a regulated, restricted, authorized,or otherwise limited “write-access” privileges to a memory or data storecomponent. As used herein, “write-access” means availability orauthorization to commit a change to a memory location, the change beingstoring or overwriting data, values, commands, instructions, or anyother data, element, or identifier to a memory location, regardless ofthe function performed by the data, element, or identifier, orregardless of the function or implementation of the environment,apparatus, system, or method. Collectively, “access” to data or“accessing” data can refer to either reading, viewing, or otherwisereceiving data from a data store, “writing” data, as referenced above,or a combination thereof. As used herein, a “regulated” system is asystem having restrictions on access, such as write-access to data orvalues of the system, whereby only approved or authorized entities,parties, functions, or the like, are enabled or otherwise allowed toaccess the regulated or restricted elements. In one non-limitingexample, only a single authorized function can have write access to aspecific data element.

While “a set of” various elements will be described, it will beunderstood that “a set” can include any number of the respectiveelements, including only one element. Also as used herein, whileelements or components can be described as “sensing” or “measuring” arespective value, data, function, or the like, sensing or measuring caninclude determining a value indicative of or related to the respectivevalue, data, function, or the like, rather than directly sensing ormeasuring the value, data, function, or the like, itself. The sensed ormeasured value, data, function, or the like, can further be provided toadditional components. For instance, the value can be provided to acontroller module or processor, and the controller module or processorcan perform processing on the value to determine a representative valueor an electrical characteristic representative of said value, data,function, or the like.

Connection references (e.g., attached, coupled, connected, and joined)are to be construed broadly and can include intermediate members betweena collection of elements and relative movement between elements unlessotherwise indicated. As such, connection references do not necessarilyinfer that two elements are directly connected and in fixed relation toeach other. In non-limiting examples, connections or disconnections canbe selectively configured to provide, enable, disable, or the like, anelectrical connection between respective elements. Non-limiting examplepower distribution bus connections or disconnections can be enabled oroperated by way of switching logic, or any other connectors configuredto enable or disable the connection between respective elements orcomponent.

As used herein, a “system” or a “controller module” can include at leastone processor and memory. Non-limiting examples of the memory caninclude Random Access Memory (RAM), Read-Only Memory (ROM), flashmemory, or one or more different types of portable electronic memory,such as discs, DVDs, CD-ROMs, etc., or any suitable combination of thesetypes of memory. The processor can be configured to run any suitableprograms or executable instructions designed to carry out variousmethods, functionality, processing tasks, calculations, or the like, toenable or achieve the technical operations or operations describedherein. The program can include a computer program product that caninclude machine-readable media for carrying or having machine-executableinstructions or data structures stored thereon. Such machine-readablemedia can be any available media, which can be accessed by a generalpurpose or special purpose computer or other machine with a processor.Generally, such a computer program can include routines, programs,objects, components, data structures, algorithms, etc., that have thetechnical effect of performing particular tasks or implement particularabstract data types.

As used herein, a “data store” can include a data value stored in amemory, wherein the data value is only write-accessible by a singlefunction, program, entity, or the like (a “writer”). Thewrite-accessibility of the data store can be policed or otherwiseregulated by digital security mechanisms understood by those skilled inthe art. While only a single writer has write-access to the data store,a data store can have or include multiple function, program, or entitieshaving read-access to read, view, or otherwise receive the data in anunidirectional relationship. In contrast with the data store, a “datastore queue” can include a data value or set of data values stored in amemory, wherein the data value is write-accessible by a set of one ormore functions, programs, entities, or the like. The write-accessibilityof the data store queue can be policed or otherwise regulated by digitalsecurity mechanisms understood by those skilled in the art.Additionally, a data store queue can include only a single function,program, or entity having read-access to read, view, or otherwisereceive the data in a unidirectional relationship. In non-limitingexamples, this read operation can be “one-time” or destructive (e.g.removing the data after the access operation).

Reference now will be made in detail to aspects of the disclosure, oneor more non-limiting examples of which are illustrated in the Figures.Each example is provided by way of explanation of the disclosure, notlimitation of the disclosure. In fact, it will be apparent to thoseskilled in the art that various modifications and variations can be madein the present disclosure without departing from the scope or spirit ofthe disclosure. Thus, it is intended that the present disclosure coverssuch modifications and variations as come within the scope of theappended claims and their equivalents.

Example aspects of the present disclosure are directed to systems andmethods that enable flexible access to internal data of a regulatedsystem, such as an avionics system. Non-limiting examples of avionicssystems can include, but are not limited to, a Flight Management System(FMS), an Airport Surface Map System (ASMS), or the like. In particular,an interface that is defined at compile time in the software istypically required to access internal data from the FMS. However,changing or altering the access interface necessitates source codemodification, re-compilation which can increase cost, increaseverification and increase testing burden. This is especially true whenthe internal data access is used in the testing of the software.Creating multiple versions of a compiled program can be very expensiveand difficult to maintain. As a result of such additional testing andrecertification requirements, the access interface can be difficult andcostly to change. Accordingly, one advantage of the disclosed aspects isto provide a method and system that enables flexible write-access ofinternal data of a write-access regulated or limited system, such as anavionics system or an FMS.

Aspects of the present disclosure provide a technique to select,customize, or otherwise flexibly define data that is input or receivedby the avionics system during runtime. In particular, in someimplementations, systems of the present disclosure can include aconfiguration tool that enables a system operator to make selections(e.g., via a user interface) of which data is thereafter input orreceived by or otherwise provided from the avionics system duringruntime, for storing in, or writing to, memory.

Thus, aspects of the present disclosure provide a technique to customizeor otherwise define data, values, parameters, or the like, to bereceived by and committed or written to memory in a data storage unit ofa regulated system, such as an avionics system, during runtime.Furthermore, aspects of the present disclosure enable enhanced,flexible, and robust editing, modification, or updating of flight testdata, testing, debugging, and analyzing of in-service problems. In yetanother instance, aspects of the disclosure can provide for or enable an“open” or accessible interface to third-party applications running oneither the embedded system or outside of it to interact with the system(e.g. an embedded Advanced Interval Management (A-IM) application or anapplication running on an Electronic Flight Bag (EFB)).

Although example aspects of the present disclosure are discussed withreference to avionics systems such as an FMS, the subject matterdescribed herein can be used with or applied to provide flexible accessto internal data of other systems, vehicles, machines, industrial ormechanical assets, or components without deviating from the scope of thepresent disclosure.

The exemplary drawings are for purposes of illustration only and thedimensions, positions, order and relative sizes reflected in thedrawings attached hereto can vary.

Referring now to FIG. 1 , an example aircraft 10 is shown having afuselage and at least one turbine engine, shown as a left engine system12 and a right engine system 14. The left and right engine systems 12,14 may be substantially identical. While turbine engines 12, 14 areillustrated, the aircraft 10 may include fewer or additional enginesystems, or alternative propulsion engine systems, such aspropeller-based engines.

The aircraft 10 is shown further comprising a plurality of sensors,systems, and components, collectively referred to as Line-ReplaceableUnits (LRUs) 16, 18, and at least one server 20 or computing unit, shownas two flight management systems, or flight control computers, locatedproximate to each other, near the nose of the aircraft 10. At least oneof the servers 20 may further include memory.

The LRUs 16, 18 and servers 20 may be communicatively interconnected bytransmission or communication lines defining a data communicationsnetwork 22, traversing at least a portion of the aircraft 10. AdditionalLRUs 16, 18 can be included. While a server 20 is described, aspects ofthe disclosure can include any computing system, flight computer, ordisplay system displaying data from multiple systems.

The memory of the servers 20 can include Random Access Memory (RAM),flash memory, or one or more different types of portable electronicmemory, etc., or any suitable combination of these types of memory. TheLRUs 16, 18 or servers 20 may be operably coupled with the memory suchthat the LRUs 16, 18 or servers 20, or any computer programs orprocesses thereon, may access at least a portion of the memory (e.g.“shared memory”).

The aircraft 10 shown in FIG. 1 is merely a schematic representation ofone non-limiting example environment of the disclosure, and used toillustrate that a plurality of LRUs 16, 18 and servers 20 may be locatedthroughout the aircraft 10. The exact location of the LRUs 16, 18 andservers 20 are not germane to the aspects of the disclosure.Additionally, more or fewer LRUs 16, 18 or servers 20 may be included inaspects of the disclosure.

The communications network 22 is illustrated schematically as a bus, butmay include a number of data communication connectors and interfaces,for example, Ethernet or fiber optic cables, and routing or switchingcomponents, to facilitate the communicative interconnection between theLRUs 16, 18 and servers 20. Furthermore, the configuration and operationof the communications network 22 may be defined by a common set ofstandards or regulations applicable to particular aircraft environments.For example, the communications network 22 on an aircraft 10 may bedefined by, or configured according to, the ARINC 664 (A664) standard,ARINC 429 (A429) standard, or ARINC 653 (A653) standard.

FIG. 2 illustrates a system 30 for providing flexible write-access tointernal data of a regulated system. As shown, the system 30 can includea set of environments that are schematically shown interacting with eachother. The system 30 can include a programming environment 32 having aprogramming editor 40 interface for coding, editing, or otherwisedeveloping source code 42 for a regulated system. Non-limiting examplesof the programming environment 32 can include a first data storage(shown as the “source code database” 44) for storing source codeelements, coding data, revision histories, or the like. The programmingenvironment 32 can further include a second data storage for storinginformation related to the regulated system and utilized for operationof the regulated system. For example, the second data storage caninclude a set of regulated system data variable definitions, shown as“data store” or “data store queue” definition information 46. In onenon-limiting example, the data store definition information can bedeveloped by, or otherwise identified by a configuration tool function(hereafter, “configuration tool” 43).

The system 30 can also include a flexible writer environment 34 that caninclude an authorized parameter writer interface 52 adapted orconfigured to receive an input parameter 54 and generate a write requestinstruction from a request generator 56 for updating, writing, storing,or committing the input parameter 54 to storage in a regulated system.As used herein, “flexible” indicates that the respective components areuser-accessible to introduce or inject specific actions (such asfunctional actions, including but not limited to write functions) in thesystem 30. In this sense, they are independent introduced actions notinitiated by system 30, but may include implementation using system 30functional elements.

The system 30 is further shown including one non-limiting exampleregulated system environment 36 including or defining a regulated system60. In one non-limiting example, the regulated system 60 can include anFMS. The regulated system 60 can include a set of data store queues 62,a set of data stores 64, a flexible writer function 72, and anauthorized writer 66, including an authorized writer function 68. Asused herein, the “authorized” writer 66 or “authorized” writer function68 is the representative single function, program, or entity havingwrite-access for the representative data store 64 illustrated. Incontrast with the authorized writer 66 or authorized writer function 68,the “flexible” writer function 72 is configured to spontaneously orindependently (and outside of the normal operation or instruction of theregulated system 60) generate a write-access command to update data,values, or the like, in a respective data store queue 62 or data store64, as described herein.

While the system 30 illustrates the programming environment 32, theflexible writer environment, and the regulated system environment 36 areillustrated proximate to each other, non-limiting aspects of thedisclosure will be understood wherein temporal or physical spacingoccurs between the respective environments 32, 34, 36. For example, theprogramming environment 32 is likely utilized well before the regulatedsystem 60 is implemented in any further environment, such as the FMS ofan aircraft. Similarly, the flexible writer environment 34 can include amobile development component, such as mobile electronic device (alaptop, tablet, etc.) that can be transportable relative to theotherwise fixed regulated system 60 (e.g. that can be “fixed” relativeto a particular aircraft). Additionally, it will be understood that eachrespective system 32, 34, 36 can include respective interfaces forutilizing the environment 32, 34, 36, including but not limited to userinterfaces (e.g. graphical user interfaces, interactive devices such asmice), and connective interfaces (universal serial buses, Ethernetcommunication ports, or the like).

During programming activities (e.g. in the programming environment 32),the configuration tool 43 can include or be otherwise aware of priorknowledge of how data is maintained in the set of data stores 64, datastore queues 62, the platform environment, the processor, or the like,of the developed regulated system 60. In response to development of theregulated system source code 42, the programming editor 40 or theconfiguration tool 43 can generate one or more loadable configurationfiles, shown as a definitions file 48 and a definitions data file 50. Insome implementations, the configuration tool 43 or other systemcomponent can be configured or adapted to parse the regulated systemsource code 42 (or a derivative thereof) to provide a list of allavailable data store queues 62 or data stores 64. Collectively orindividually, the definitions file 48 or the definitions data file 50can instruct or otherwise inform a data-writing component of theavionics system regarding the identity of the data stores, data storequeues, or a combination thereof. For instance, in one non-limitingexample, the definitions file 48 can contain a plain memory layout ofthe embedded system, whereas the definitions data file 50 can alsocontain data types and variable names to make it easier to define theinput parameter 54. In non-limiting examples, the data-writing componentcan include the flexible writer environment 34, the authorized parameterwriter interface 52, the request generator 56, the flexible writerfunction 72 or a subset thereof.

In some implementations, in addition to the regulated system source code42, the configuration tool 43 can analyze or otherwise use one or morebinary object files of the regulated system 60 to determine the memorylayout of the system 60. For example, a compiler can optionally create acontext clause (which also may be known as a representationspecification). This context clause can contain tables describing thememory layout. The configuration tool 43 can use the context clause asan input in addition to the regulated system source code 42 (which canstill be used to determine dependencies of nested data structures).Based on the target processor architecture (e.g., the processor whichimplements the regulated system 60), the configuration tool 43 is alsoaware of byte alignment and endianness to adjust offsets in the loadableconfiguration files 48, 50.

As shown, in some non-limiting aspects, the definitions data file 50 caninclude additional information for each identified data store, datastore queue, or the like. The additional information can include, but isnot limited to, offsets, size, parameters, or the like. In someimplementations, the definitions file 48 or the definitions data file 50can specify certain data groups (e.g. specific data stores 64 orspecific data store queues 62) that can be written or overwritten duringruntime of the regulated system 60.

In some implementations, in addition to specifying data store or datastore queue definitions or data files, the loadable configuration files48, 50 can also specify particular data entries (e.g., parameters)within specific data store queues 62 or data stores 64. The loadableconfiguration files 48, 50 can provide instructions (e.g., offsets,type, size, etc.) regarding how many bytes are to be written by awrite-access command. For example, an offset can describe a number ofbytes from the beginning of the data store 64 where a particular dataitem starts; a size can describe a number of bytes that a particulardata item occupies; and a type can define how to interpret those bytes.

In particular, the loadable configuration files 48, 50 can furtherprovide or enable the authorized parameter writer 52 or the flexiblewriter function 72 to decode or encode parameter data to be written tothe data store queue 62 or data store 64. For example, encoded parameterdata to be written to the data store queue 62 or data store 64 can be aset of serialized data (e.g., serialized bytes). The authorizedparameter writer 52 or the flexible writer function 72 can encode theserialized data based on information contained in the loadableconfiguration files 48, 50.

During runtime, which can include runtime operation of the aircraft, orfor example, testing or maintenance-based “runtime” of the regulatedsystem 60, a user, function, system, or program can desire a change inparameter value of the data store queue 62 or the data store 64. Such a“flexible” change to parameter value can be enabled by way of the system30 described herein.

For example, a user, function, system, or program can access theflexible writer environment 34 in order to generate a request to updateor otherwise write or overwrite a specific parameter (or set ofparameters), indicated by the input parameter 54. The response isgenerated by the request generator 56, as encoded or informed by theloadable configuration files 48, 50, and provided to the regulatedsystem 60 or the flexible writer function 72 by way of communication 58.

If the requested parameter update is directed toward a parameter in thedata store queue 62, the flexible writer function 72 can proceed togenerate a write-accessible command (also encoded or informed by way ofthe loadable configuration files 48, 50) directly to the data storequeue 62, by way of communication 74. This assumes the flexible writerfunction 72 is one of the multiple write-accessible writers of the datastore queue 62. In another non-limiting example, the flexible writerfunction 72 can potentially supplement data coming via 58 withsystem-internal context data that may not be known to the outside entity(e.g. runtime-generated indices of events or context data coming from anaeronautical database).

If the requested parameter update is directed toward a parameter in thedata store 64, the flexible writer function 72 cannot directly updatethe data store 64, as the flexible writer function 72 is the not thesingle writer has write-access to the data store (the single writershown as the authorized writer 66). In this instance, the flexiblewriter function 72 can generate a command to the authorized writer 66 byway of communication 76. In response, the authorized writer 66 caninstruct, or generate a write-accessible instruction, by way of theauthorized writer function 68, shown as instruction communication 70.The flexible writer function 72 can further be configured or adapted tointercept the authorized instruction communication 70 with anothercommunication 78 (shown schematically intercepting instructioncommunication 70 in box 80), and replace, inject, or otherwise updatethe authorized instruction communication 70 to include the requestedparameter update of the data store 64. In one non-limiting example, thereplacing, injecting, or otherwise updating the authorized instructioncommunication 70 can further be encoded or informed by way of theloadable configuration files 48, 50. The updated authorizationinstruction communication with the requested parameter update is thendelivered to the data store 64, where the modified authorizedwrite-access instruction is executed, or otherwise written to memory.

Each of the configuration tool 43, the programming environment 32, theflexible writer environment 34, the flexible writer function 72, or theregulated system environment 60, or components thereof, can beimplemented by one or more computing devices, schematically representedin FIG. 3 . As shown, the computing device 110 can be referred to as acontroller module or a microcontroller. The computing device 110 can bestand-alone or can be embedded into a computing system or environment32, 34, 36. In another non-limiting example, the respective components,such as the flexible writer environment 34, can be located on or as asubcomponent of another vehicle or aircraft, or as an external tool.

The computing device 110 can include one or more processors 112 and amemory 114. The one or more processors 112 can be can be any suitableprocessing device, including, but not limited to, a processor core, amicroprocessor, an Application Specific Integrated Circuit (ASIC), aField Programmable Gate Array (FPGA), a controller, a microcontroller, acontroller module, or the like. In another non-limiting example, the oneor more processors 112 can include of processors or processor executioncores that are operatively connected. The memory 114 can include one ormore non-transitory computer-readable storage mediums, such as RAM, ROM,EEPROM, EPROM, flash memory devices, magnetic disks, the like, or acombination thereof. The memory 114 can store data 116, such as datastores 64 or data store queues 62. The memory 114 can also storeinstructions 118 which are executed by the processor 112 to performoperations or functions described by the present disclosure.

It is readily apparent that an advantage of the present disclosure isthat it enables truly configurable and dynamic write-access to the datawithout the need to recompile and recertify the aircraft system (e.g.,Flight Management System).

The technology discussed herein makes reference to servers, databases,software applications, and other computer-based systems, as well asactions taken and information sent to and from such systems. One ofordinary skill in the art will recognize that the inherent flexibilityof computer-based systems allows for a great variety of possibleconfigurations, combinations, and divisions of tasks and functionalitybetween and among components. For instance, server processes discussedherein may be implemented using a single server or multiple serversworking in combination. Databases and applications may be implemented ona single system or distributed across multiple systems. Distributedcomponents may operate sequentially or in parallel.

To the extent not already described, the different features andstructures of the various aspects can be used in combination with eachother as desired. That one feature cannot be illustrated in all of theaspects is not meant to be construed that it cannot be, but is done forbrevity of description. Thus, the various features of the differentaspects can be mixed and matched as desired to form new aspects, whetheror not the new aspects are expressly described. Combinations orpermutations of features described herein are covered by thisdisclosure.

For example, when a data store queue 62 or data store 64 is written to,in accordance with the disclosure, there can also include a feedbackmechanism for the writer (e.g. the authorized parameter writer 52, theflexible writer function 72, or a combination there of) to know that thewriting was successful. This can occur, for example, during runtime fordeterministic (automated) testing. In another non-limiting example, thefeedback mechanism can include notification to or for the writer whenthe subscriber of the data store queue 62 has actually read the data orevent change requested. In yet another non-limiting example, abi-directional data store queue 62 can support external access (e.g.external to the regulated system 60, for instance) to read the data orevent change requested to confirm the write has occurred.

This written description uses examples to disclose aspects of thedisclosure, including the best mode, and also to enable any personskilled in the art to practice aspects of the disclosure, includingmaking and using any devices or systems and performing any incorporatedmethods. The patentable scope of the disclosure is defined by theclaims, and can include other examples that occur to those skilled inthe art. Such other examples are intended to be within the scope of theclaims if they have structural elements that do not differ from theliteral language of the claims, or if they include equivalent structuralelements with insubstantial differences from the literal languages ofthe claims.

Further aspects of the invention are provided by the subject matter ofthe following clauses:

1. A system for runtime write access of data of a regulated system,including a data store having limited write access, an authorized writercommunicatively connected with the data store and authorized to havewrite access to the data store by way of generating a runtimeinstruction communication delivered from the authorized writer to thedata store, the runtime instruction communication defining authorizeddata to write to the data store, and a flexible writer that is notauthorized to have write access to the data store, and adapted toreceive an unauthorized data input, communicatively connected with theauthorized writer, and configured to communicate instruction to theauthorized writer to generate a runtime instruction communication, andreplace the runtime instruction communication, during the delivery fromthe authorized writer to the data store, with the unauthorized datainput such that the unauthorized data input is committed to the datastore.

2. The system of any preceding clause wherein the regulated system is anavionics system.

3. The system of any preceding clause wherein the avionics system is atleast one of a flight management system or an airport surface mapsystem.

4. The system of any preceding clause wherein the system is a testingsystem, a debugging system, or an analysis system.

5. The system of any preceding clause wherein the unauthorized datainput includes flight test data for the regulated system.

6. The system of any preceding clause wherein the system is aprogramming development system.

7. The system of any preceding clause, further comprising a loadableconfiguration file defining write access instructions for the datastore.

8. The system of any preceding clause wherein the flexible writer isfurther configured to receive the loadable configuration file and toform a replacement runtime instruction communication including theunauthorized data input in accordance with the write access instructionsfor the data store.

9. The system of any preceding clause wherein the flexible writer isfurther configured to form the replacement runtime instructioncommunication by encoding the data input in accordance with the writeaccess instructions for the data store.

10. The system of any preceding clause wherein the unauthorized datainput is a regulated system parameter, and the flexible writer isconfigured to overwrite the regulated system parameter by way ofreplacing the runtime instruction communication.

11. The system of any preceding clause wherein the regulated system isregulated by at least one of the ARINC 664 standard, the ARINC 429standard, or the ARINC 653 standard.

12. A method of writing an unauthorized parameter to a write accesslimited data store of a runtime regulated system, the method includingreceiving the unauthorized parameter by a flexible writer function notauthorized to write to the data store, instructing, by the flexiblewriter function, an authorized writer function to generate a runtimeinstruction communication authorized to write to the data store,replacing the runtime instruction communication during a delivery fromthe authorized writer function to the data store with a replacementcommunication including the unauthorized parameter, and executing thereplacement communication and writing the unauthorized parameter to thedata store.

13. The method of any preceding clause wherein the data store includes apredefined parameter memory access, and wherein replacing the runtimeinstruction communication includes encoding the unauthorized parameterin accordance with a data store configuration file informing writeinstructions of the predefined parameter memory access.

14. The method of any preceding clause wherein replacing the runtimeinstruction communication includes at least one of modifying the runtimeinstruction communication to include the unauthorized parameter,injecting the runtime instruction communication with the unauthorizedparameter, or intercepting the runtime instruction communication.

15. The method of any preceding clause wherein executing the replacementcommunication includes executing the replacement communication based atleast on an assumption that the replacement communication is anauthorized communication.

16. The method of any preceding clause wherein the assumption that thereplacement communication is an authorized communication based at leaston the replacement communication appearing to originate from theauthorized writer function.

17. A system for updating a write access limited parameter in a runtimeregulated avionics system by an unauthorized writer, the systemincluding a data store having write access limited to a singleauthorized writer different from the unauthorized writer, theunauthorized writer having a request generator configured to generate anunauthorized write request including an updated parameter value, andcommunicatively connected with the regulated avionics system, and aflexible writer function of the regulated avionics system configured toreceive the unauthorized write request and instruct the singleauthorized writer to generate a runtime instruction communicationauthorized to write to the data store, and configured to replace theruntime instruction communication generated by the single authorizedwriter with a modified runtime instruction communication including theupdated parameter value, whereby the data store receives the modifiedruntime instruction communication and commits the updated parametervalue to the data store.

18. The system of any preceding clause wherein the system is a testingsystem, a debugging system, or an analysis system.

19. The system of any preceding clause wherein the updated parametervalue includes flight test data for the regulated system.

20. The system of any preceding clause wherein the regulated system isregulated by at least one of the ARINC 664 standard, the ARINC 429standard, or the ARINC 653 standard.

What is claimed is:
 1. An environment for providing runtime write accessto a regulated system, the environment comprising: a controller modulethat upon reception of an unauthorized input parameter at anunauthorized function of the regulated system, with the unauthorizedfunction being not authorized to write to the regulated system, isconfigured to: receive an unauthorized input parameter at anunauthorized function of the regulated system; instruct an authorizedfunction of the regulated system to generate a runtime instructioncommunication that does not include the unauthorized input parameter,the authorized function being authorized to write to the regulatedsystem; send, by the authorized function, the runtime instructioncommunication; intercept, by the unauthorized function, the runtimeinstruction communication; modify, by the unauthorized function, theintercepted runtime instruction by at least one of: replacing theruntime instruction communication with at least the unauthorized inputparameter; injecting the unauthorized input parameter into the runtimeinstruction communication; or updating the runtime instructioncommunication with the unauthorized input parameter; and execute themodified runtime instruction communication including the unauthorizedinput parameter and writing the unauthorized parameter to the regulatedsystem.
 2. The environment of claim 1, wherein the regulated system isan avionics system.
 3. The environment of claim 2, wherein the avionicssystem is at least one of a flight management system or an airportsurface map system.
 4. The environment of claim 1, wherein theenvironment is a testing environment, a debugging environment, or ananalysis environment.
 5. The environment of claim 4, wherein theunauthorized input parameter includes flight test data for the regulatedsystem.
 6. The environment of claim 1, wherein the environment is aprogramming development environment.
 7. The environment of claim 1,further comprising a loadable configuration file defining write accessinstructions for the regulated system.
 8. The environment of claim 7,wherein the unauthorized function is further configured to receive theloadable configuration file and to form a replacement runtimeinstruction communication including the unauthorized input parameter inaccordance with the write access instructions for regulated system. 9.The environment of claim 8, wherein the unauthorized function is furtherconfigured to form the replacement runtime instruction communication byencoding the unauthorized input parameter in accordance with the writeaccess instructions for the regulated system.
 10. The environment ofclaim 1, wherein the unauthorized input parameter is a regulated systemparameter, and the unauthorized function is configured to overwrite theregulated system parameter by way of replacing the runtime instructioncommunication.
 11. The environment of claim 1, wherein the regulatedsystem is regulated by at least one of the ARINC 664 standard, the ARINC429 standard, or the ARINC 653 standard.
 12. A non-transitory computerreadable medium storing a program configured to cause a computer toexecute a method of providing runtime write access to a regulatedsystem, the method providing runtime write access to a regulated systemcomprising: receiving an unauthorized input parameter at an unauthorizedfunction of the regulated system, the unauthorized function being notauthorized to write to the regulated system; instructing an authorizedfunction of the regulated system to generate a runtime instructioncommunication that does not include the unauthorized input parameter,the authorized function being authorized to write to the regulatedsystem; sending, by the authorized function, the runtime instructioncommunication; intercepting, by the unauthorized function, the runtimeinstruction communication; modifying, by the unauthorized function, theintercepted runtime instruction by at least one of: replacing theruntime instruction communication with at least the unauthorized inputparameter; injecting the unauthorized input parameter into the runtimeinstruction communication; or updating the runtime instructioncommunication with the unauthorized input parameter; and executing themodified runtime instruction communication including the unauthorizedinput parameter and writing the unauthorized input parameter to theregulated system.
 13. The non-transitory computer readable medium ofclaim 12, wherein the regulated system comprises limited data store apredefined parameter memory access.
 14. The non-transitory computerreadable medium of claim 13, wherein the method further comprisesencoding the unauthorized input parameter in accordance with a storeconfiguration file informing write instructions of the predefinedparameter memory access.
 15. The non-transitory computer readable mediumof claim 12, wherein the method further comprises at least one ofmodifying the runtime instruction communication to include theunauthorized input parameter, injecting the runtime instructioncommunication with the unauthorized input parameter, or intercepting theruntime instruction communication.
 16. The non-transitory computerreadable medium of claim 12, wherein executing the modified runtimeinstruction includes executing the intercepted runtime communicationbased at least on an assumption that the intercepted runtimecommunication is an authorized communication.
 17. The non-transitorycomputer readable medium of claim 16, wherein the assumption that theintercepted runtime communication is an authorized communication basedat least on the intercepted runtime communication appearing to originatefrom the authorized function.
 18. The non-transitory computer readablemedium of claim 12, wherein the regulated system is an avionics system.19. The non-transitory computer readable medium of claim 12, wherein thenon-transitory computer readable medium is a processor which implementsthe regulated system.
 20. The non-transitory computer readable medium ofclaim 19, wherein unauthorized input parameter is received from externalthe regulated system.